<?php
//TODO: Felhantering på execute (Refaktorera till db-klassen?)
class LoginHandler
{
	private $loginSession;
	private $database = null;
	private $username = 'username';
	private $passWord = 'passWord';
	public function __construct ($a_database){
		$this->database = $a_database;
	}
	//Funktion för om användaren är inloggad eller inte
	//returnerar true om man är inlaggad annrs false
	public function IsLoggedIn()
	{
		if (isset($_SESSION[$this->username]) && isset($_SESSION[$this->passWord] ))
		{
			return true;
		}
		return false; 
	}
	//funktion som loggar in dig
	//returnerar true om du kan logga in.
	public function DoLogin($uName, $pWord)
	{
		if (isset($uName) && isset($pWord))
		{
			if($stmt = $this->database->Prepare('SELECT * FROM user WHERE Username =?'))
			{
				$stmt->bind_param('s', $uName);
				$stmt->execute();
				$stmt->bind_result($userId, $dbUsername, $dbPassWord);
				while ($stmt->fetch()){
					if ($pWord == $dbPassWord){
						$_SESSION[$this->username]=$dbUsername;
						$_SESSION[$this->passWord]=$dbPassWord;
						return true;
					}
				}
				$stmt->close();
			}

		}
		return false;
	}
	// funktion för att logga ut dig
	public function DoLogout()
	{
		if (isset($_SESSION[$this->username]))
		{
			unset($_SESSION[$this->username]);
			unset($_SESSION[$this->passWord]);
		}
	}
}